#include <stdbool.h>
#include <stdint.h>

#define BUFFER_SIZE (10) /* 缓冲数组大小 */

/**
 * @brief 初始化串口
 *
 */
void BSP_Uart_Init(void);

/**
 * @brief 检查串口接收完成
 *
 * @return bool
 */
bool BSP_Uart_CheckFlag(void);

/**
 * @brief 串口DMA开始发送
 *
 * @param buf 缓冲区
 * @param len 长度
 * @return uint8_t
 */
uint8_t BSP_Uart_StartSend(uint8_t *buf, uint8_t len);

/**
 * @brief 打开串口DMA接收
 *
 * @return uint8_t
 */
uint8_t BSP_Uart_StartDMA(void);

/**
 * @brief 获取缓冲区地址
 *
 */
uint8_t *BSP_Uart_GetDataAddr(void);

/**
 * @brief 获取接收数据长度
 *
 */
uint8_t BSP_Uart_GetDataLen(void);

void Uart_IRQHandler(void);
